﻿using System;
using System.Collections.Generic;

namespace DbManager.DataRequest
{
    public class DataRequestGorod:IDataRequest
    {
        private string _name = string.Empty;
        private int _foreignKey;

        public void SetRequestParameters(Dictionary<string, string> parametersDictionary)
        {
            if (parametersDictionary.ContainsKey("name"))
            {
                _name = parametersDictionary["name"];
                
            }
            if (parametersDictionary.ContainsKey("foreignKey"))
            {
                _foreignKey = Int32.Parse(parametersDictionary["foreignKey"]);
            }
        }

        public string GetSelectQuery()
        {
            return "SELECT [Идентификатор], [Название] FROM [Город] ORDER BY [Идентификатор]";
        }

        public string GetSelectQueryById()
        {
            return "SELECT [Идентификатор], [Название] FROM [Город] WHERE [Идентификатор направления]=" + _foreignKey;
        }

        public string GetInsertQuery()
        {
            if (string.IsNullOrEmpty(_name) || _foreignKey == 0)
            {
                return string.Empty;
            }
            return "INSERT INTO [Город] ([Идентификатор направления], [Название]) VALUES (" + _foreignKey + ", '" + _name + "')";
        }

        public string GetUpdateQuery(int id)
        {
            if (string.IsNullOrEmpty(_name) || id == 0)
            {
                return string.Empty;
            }
            return "UPDATE [Город] SET [Название]='" + _name + "' WHERE [Идентификатор]=" + id;
        }

        public string GetDeleteQuery(int id)
        {
            if (id == 0)
            {
                return string.Empty;
            }
            return "DELETE FROM [Город] WHERE [Идентификатор]=" + id;
        }
    }
}
